package com.atom.module.mvvm.livedata

import androidx.lifecycle.LiveData

/**
 * 扩展LiveData可用于指定数据的类型,使监听者根据同一数据不同类型进行不同操作
 */
abstract class AbstractLivaData<T, V> : LiveData<AbstractLivaData.Pack<T, V>> {

    constructor(type: T, value: V) : super(Pack(type, value))

    constructor() : super()

    data class Pack<T, V> constructor(
        val type: T,
        val value: V
    )
}